1. Field of the Invention
The present invention relates to determining access patterns for software variables. More specifically, the present invention relates to a system and a method for determining whether an array is a read-only array.
2. Related Art
The Java 2 Platform, Micro Edition (J2ME™), has become a very popular software platform for memory-constrained devices, such as wireless devices. Motorola, Nokia, NTT DoCoMo, RIM, Siemens, and many other key players in the wireless device industry have shipped a large number of J2ME-enabled devices. In fact, hundreds of millions of J2ME-enabled mobile phones have been shipped during the past few years.
Many J2ME™ devices are extremely resource-constrained, with only a limited amount of random-access memory (RAM) available for the operating system and applications. Whenever possible, read-only system classes for the device are typically loaded into a less-constrained read-only memory (ROM) instead of RAM, thereby conserving space in RAM. However, because the Java™ language does not support read-only data types, programmers cannot specify within code that a structure such as an array should be read-only. As a result, such arrays are often stored in RAM, even if they are never modified.
Hence, what is needed is a method and a system for determining whether an array is a read-only array.